MPATH=$(realpath $(lastword $(MAKEFILE_LIST)))
CXX = g++
CPPFLAGS = -lGL -lGLU -lglut -Wall -pedantic -Iinclude -O3
OUTDIR = lib/
SOURCE = flags.cpp io.cpp fmm.cpp genrl.cpp mfmm.cpp byteswap.cpp skeldt.cpp
OBJ = $(SOURCE:.cpp=.o)

ABSOUT=$(MPATH:Makefile=)$(OUTDIR)

ifdef GPROF
	CPPFLAGS += -pg
	DBG=1
endif

ifdef DBG
	CPPFLAGS += -g
endif

default:lib

lib:$(OBJ)
#Make an output directory:
	@if !(test -d $(OUTDIR)); then mkdir $(OUTDIR); fi
# Combine all object files into library file.
	@echo Combining all object files into library file afmm.a
	@ar rvs lib/afmm.a *.o
	@echo AFMM succesfully compiled. Files are in: $(ABSOUT)

all:$(OBJ) skeleton.o
	$(CXX) $(CPPFLAGS) $(OBJ) skeleton.o -o skeleton
	
%.o : %.cpp 
	$(CXX) $(CPPFLAGS) -c $< -o $@

clean:
	$(RM) *.o *.gch
	$(RM) -rf lib
	$(RM) skeleton
